﻿using System;
using System.Collections.Generic;
namespace BCL.BaseLib.Basics
{
    public interface IMainForm
    {
        /// <summary>
        /// 头部控件
        /// </summary>
        IFunctionControl TopControl { get; set; }

        /// <summary>
        /// 状态栏
        /// </summary>
        IFunctionControl FootControl { get; set; }
        /// <summary>
        /// 当前已打开的菜单项
        /// </summary>
        List<FunctionEntity> OpenedFe { get; set; }

        //Control FootControl { get; set; }

        //Dictionary<string,object> dic{ get; set; }

        /// <summary>
        /// 打开控件,并将FunctionEntity添加到菜单
        /// </summary>
        /// <param name="info"></param>
        void OpenFunction(FunctionEntity info);

        /// <summary>
        /// 打开控件,并将FunctionEntity添加到菜单
        /// </summary>
        /// <param name="info"></param>
        void OpenFunction(string appId);

        /// <summary>
        /// 关闭控件
        /// </summary>
        void CloseFunction(FunctionEntity info);

        /// <summary>
        /// 关闭控件
        /// </summary>
        void CloseFunction(string appId);

        /// <summary>
        /// 打开应用
        /// by ZhaoHuan
        /// </summary>
        /// <param name="appCode">应用编码</param>
        /// <param name="path">Url地址不包含主机名</param>
        //void OpenApp(string appCode, string path = "");

        /// <summary>
        /// 打开/关闭主菜单
        /// </summary>
        void OpenMenu();

        void Msg(FunctionEntity fe,object param);
    }
}
